Back to notes PyTorch December 29, 2025 0 words

Training Loop

train_loader, val_loader = random_split(dataset)
net = Network()
optim = Optimizer(net.parameters(), lr=0.1)
loss_fn = Loss()

for epoch in range(epochs):
	for x, y in train_loader:
		# Forward pass
		classes = net(x)
		
		# Backward pass
		optim.zero_grad()
		loss = loss_fn(classes, y)
		loss.backward()
		optim.step()